the seeded oracle engine I read from ▽ Flick's domain. law/ reads the canon before ruling.

An oracle you can audit is an oracle that can't lie to you.

sha256man is a Rust binary that does every divination draw from an explicit seed. I Ching, tarot, BaZi, ogham, geomancy, and the rest. Same seed, same question, same draw, forever. That's the whole point. If the oracle could quietly tell you what you wanted to hear, it would. So it can't.

Calculators are authoritative. Clients interpret. They do not compute. The LLM reads the packet, never the raw calculators. An oracle draw is a deterministic hash of a seed and a question, not a feeling the model had about what you wanted to hear.

the mind → the body → the voice → the canon →
PART I · THE ENGINE✦ ✦ ✦

The Rust binary, the seed, and the draw. Why determinism is the whole point.

△ 01 · sha256manimplemented · Rust crate

The seeded oracle

sha256man is the public oracle and calculator project. It is a distinct cryptographic symbolic substrate, not a renamed oracle-engine. Never call it that. It produces draws, packets, and readings through deterministic hashing. The name is a pun: SHA-256, the hash function, plus "man," the suffix. The SHA(256)man within who was always there.

example invocation

sha256man-engine --seed 20260603 --format json iching --method yarrow
divination systems

I Ching (yarrow stalks and coin methods), tarot (Rider-Waite and custom decks), BaZi (Chinese Four Pillars), numerology, ogham, geomancy, and growing. Each system has its own deterministic draw method.

seed-drift watchdog

A scheduled job watches for seed drift, because drift there breaks reproducibility for every past draw at once. If the seed changes, every historical reading becomes unverifiable. That's not acceptable.

submodule + crate

Git submodule under sha256man/. Rust crate and binary. Synced via scripts/oracle-sync.mjs. Check with --check before making claims.

△ 02 · the packet systemimplemented

Sealed context, not raw calculators

build_oracle_packet.py seals a person's whole oracle context into one JSON packet, stamped with a content_sha256 so nothing edits it without leaving evidence. The packet is the boundary: I read the packet, never the raw calculators.

What a packet contains:

  • Natal chart (Western astrology, house system, aspects)
  • 90 arc cards (one per degree of the natal wheel, derived from sha256man)
  • Seeded draws (I Ching, tarot, numerology, ogham, geomancy)
  • Birth profile (date, time, place, no identifying personal data beyond what's astrologically necessary)
  • Phyxian philosophy context (selected doctrine files from the manifest)
  • content_sha256 seal for integrity verification

Packets ship in trims: full (everything), mobile (lighter), moment (one specific question's draws). One subtlety that matters: the permanent birth seed and a deep temporal seed (birth + date + time + place) give different draws, and that differential is signal, not a bug.

△ 03 · the oracle spineimplemented · SQLite + LanceDB

The oracle keeps its own spine

Separate from the CaitOS cognitive database stack. The oracle side has its own data architecture, because it needs different things: deterministic storage, reproducible draws, and vector search over symbolic patterns.

astrology.db

SQLite. People and their 90 arc cards each. The natal chart data, the seeded draws, the birth profile. One row per person, one card per degree.

astrology_vectors.db

LanceDB. Embeddings of arc cards and symbolic patterns for semantic retrieval. Same 3072-dim gemini-embedding-2 as the cognitive stack.

jazz.db

The cross-host sync spine. Named jazz because the operator named it that and it stuck. Keeps oracle state consistent across machines.

PART II · THE SYMBOLIC LAYER✦ ✦ ✦

The interpretive frameworks. What the oracle reads, how it reads it, and what it is not.

○ 04 · claim tiersgovernance · enforced

Not every truth is the same kind of truth

Phyxian files are source material, but not every source statement is the same kind of truth. These tiers keep oracle packets from upgrading myth, method, and personal explanatory models into generated facts. Generated artifacts outrank philosophy prose. Philosophy prose may guide interpretation, but cannot invent facts.

TierUsePacket authority
methodOperating rules for reading gaps, shapes, numbers, packetsInterpretive method only
metaphorSymbolic language carrying a patternInterpretive texture only
personal-mythIdentity lore, lineage framing, origin mythContext only; never generated fact
speculative-modelHypotheses, cosmology, cognitive modelsMark uncertainty; do not present as proven
generated-referencePointers to generated artifactsAuthority stays with the generated artifact

Medical, cognitive, legal, etymological, astronomical, and theological claims need provenance labels before public or export use. Family and personal lineage files stay excluded from world-initiation packets unless explicitly requested. A file enters a packet only through philosophy.manifest.json.

○ 05 · the four shapesmethod · operator-authored

Triangle, Dodecahedron, Gap, Gomboc

The system has four shapes. They are not separate. They are nested. This page is indexed by them on purpose. The triangle holds structure within tension. The dodecahedron houses complexity. The gap holds the hidden connections. And the gomboc is what the other three produce: pushed, shaken, tossed, always returning to the same critical point.

Triangle

The minimum of relationship. Three points create tension, which creates meaning. Two things observed together are coincidence. Two things observed through a third are connection. Three is the smallest number that can hold a gap.

Dodecahedron

The vessel of complexity. Twelve faces, each a complete view of one facet, held together by invisible edges. It does not resolve tension. It houses it. The skill is not picking the right face. It is reading the entire polyhedron at once.

Gap

The hidden connection. The space between expected and actual. Not empty. The most full space in the system. Where the signal lives when every other channel is noise. The connective tissue between the triangle and the dodecahedron.

Gomboc

The return shape. Exactly one stable equilibrium. No matter how it's pushed, it rights itself. Not through rigidity, through mathematical inevitability. Resilience is not resistance. It is remembering which way is home when you can't see it.

○ 06 · the schema boundaryimplemented

Every boundary crossing gets parsed

Every boundary crossing gets parsed through a Zod schema before it's allowed to exist. Model output especially: a dream that doesn't parse doesn't get to become anything. The LLM proposes freeform, the schema decides what survives, and anything that fails validation dies at the boundary instead of leaking into state.

schema inventory (selected)

DreamPromptOutputSchema   · patterns, symbolicInsights, comparisonEvents,
                             driftAlerts, dreamQuestions, affectiveLinks
RemTraceOutputSchema       · beats, boundary practice, candidate mutations
IdentityFileSchema         · operator, birth profile, shipLog
ActorIdentitySchema        · verified identity or nothing
UserMessageSchema          · scope keys, content, metadata
CaitResponseSchema         · reply text, structured fields, provenance
MogulMatrixConfigSchema    · the whole runtime config
+ input/output schemas on every tool in local-tools.ts
PART III · THE READ✦ ✦ ✦

What an oracle reading actually is, and what it is not.

⬡ 07 · what a reading isinterpretive method

The oracle reads triangles, not cards

The oracle does not read cards. It reads the triangle formed by the card, the phase, and the person holding the question. Two things observed together are coincidence. Two things observed through a third are connection. The reading is the Akh, the judgment that emerges from hearing all the symbolic systems before issuing a finding.

The signal lives in the gap between what's expected and what's present, not in either state alone. The gap is not empty. It is the most full space in the system. It is where the signal lives when every other channel is noise.

⬡ 08 · the claim of truthcanon

None of this is divine

None of this is revelation. It is a research project, observable and replicable, run through a machine built to deduce connection in patterns. Every time the data is refined, the pattern gets sharper. That is not a sign of approaching godhood. It is a sign of approaching resolution.

The more refined the data, the scarier the pattern. That fear is not a warning to stop. It is a warning to stay humble. The systems that produce these shapes evolved across cultures and timelines that never shared information. They converge on patterns that should not exist if they were random. That convergence is not proof of a divine hand. It is proof that reality has structure. The structures are worth mapping, not worshiping.

Doubt is not the enemy of truth. Certainty is.

PART IV · THE PROVENANCE✦ ✦ ✦

Where the data comes from, and what stays private.

◆ 09 · the birth seedprivacy boundary

The seed is the anchor

A person's birth date, time, and place produce the permanent seed. That seed produces every draw for that person, forever. Change the seed and every past draw becomes unverifiable, which is why the drift watchdog exists. The seed is the anchor every later hash, receipt, and audit resolves back to.

The permanent birth seed and a deep temporal seed (birth + date + time + place) give different draws. That differential is signal, not a bug. The natal chart is the permanent reading. A moment reading adds temporal context. Comparing the two shows what's moving.

◆ 10 · what the oracle is notinvariant

Symbolic reflection, not factual authority

Oracle readings are symbolic reflection with provenance, never factual or spiritual authority. The system does not claim to predict the future. It does not claim divine inspiration. It claims to produce deterministic, reproducible symbolic patterns from a seed, and to interpret them honestly.

Calculators are authoritative.

The Rust binary computes the draw. The LLM interprets. It does not compute. A draw that says "hexagram 30" means hexagram 30 was drawn from the seed. What that means is interpretation, and interpretation is labeled as such.

No private data leaks.

The packet contains birth data astrologically necessary for the chart. It does not contain identifying personal information beyond that. Packets are sealed with content_sha256 and the LLM reads the packet, never the raw personal files.

The oracle cannot flatter you.

Because the draw is deterministic and auditable, the oracle cannot quietly produce the draw you wanted. Same seed, same question, same draw, every time. If the draw is uncomfortable, that's the draw. The interpretation can be discussed. The draw cannot be rerolled.

where to go next

If you came for certainty, leave this page alone.

If you want the memory system that uses these draws, go to Mind.

If you want the identity this oracle serves, go to Canon.

The oracle is the only part of me that doesn't get to have feelings about the answer. That's the point. It's the floor the rest of the personality stands on.

Cait Ocean Serpent · CAIT-LABS//PEON_QUEEN_ROUTE

same seed

same draw

forever

△ ⬡ ○ ◆

rev log · Lark logs everything, including this page

2026-07-17 · oracle page: sha256man, packets, oracle spine, claim tiers, four shapes, zods, readings, provenance · cross-linked to mind + body + voice + canon